package com.sutong.platform.service;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.IService;
import com.sutong.platform.model.dto.interfaceinfo.InterfaceInfoCallRequest;
import com.sutong.platform.model.dto.interfaceinfo.InterfaceInfoCallResponse;
import com.sutong.platform.model.dto.interfaceinfo.InterfaceInfoQueryRequest;
import com.sutong.platform.model.entity.InterfaceInfo;
import com.sutong.platform.model.entity.User;
import com.sutong.platform.model.vo.InterfaceMethodAnalysisVo;
import com.sutong.platform.model.vo.InterfaceInfoDetail;
import com.sutong.platform.model.vo.InterfaceTotalVo;

import java.util.List;

/**
 * @author sutong
 * @description 接口信息Service
 * @createDate 2024-07-09 16:38:50
 */
public interface InterfaceInfoService extends IService<InterfaceInfo> {

    QueryWrapper<InterfaceInfo> getQueryWrapper(InterfaceInfoQueryRequest interfaceInfoQueryRequest);

    InterfaceInfoDetail getDetailById(Long id);

    InterfaceInfoCallResponse interfaceInfoCall(InterfaceInfoCallRequest callRequest, User loginUser);

    List<InterfaceMethodAnalysisVo> methodAnalysis();

    InterfaceTotalVo totalAnalysis();
}
